@font-face {
    font-family: 'openSans';
    src: url('../fonts/openSans/OpenSans-VariableFont_wdth\,wght.ttf');
}

* {
    font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

html {
    scroll-behavior: smooth;
}

input:focus,
textarea:focus,
select:focus {
    outline: none;
}


#overShadow {
    width: 100%;
    height: 100%;
    background-color: #ffffff00;
    position: fixed;
    top: 0;
    /* z-index: 480; */
    opacity: 30%;
    display: none;
    left: 0;
}

.header_new_responsive_title {
    margin: 0 !important;
    padding: 0 !important;
    color: var(--color_company_1);
}


.header_new_responsive_title h5 {
    color: var(--color_company_2);
}

.header_new_responsive_container {
    position: fixed;
    top: 0;
    left: -100%;
    width: 20%;
    min-width: 220px;
    max-width: 300px;
    height: 100vh;
    min-height: 100vh;
    box-sizing: border-box;
    text-align: left;
    transition: left 200ms ease, transform 200ms ease, opacity 200ms ease;
    -ms-overflow-style: none;
    scrollbar-width: none;
    z-index: 1001;
    /* color: white; */
/* 
    background-image: linear-gradient(to bottom,
            rgba(220, 38, 38, 0.3) 5%,
            rgba(220, 38, 38, 0.3) 35%),
        url('/img/jump-banner.jpg'); */

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    padding: 0;
    display: flex;
    flex-direction: column;
    overflow-y: auto;



    .header_new_responsive_logo {
        margin: 0;
    }

    input {
        border: 1px solid #ccc;
        color: black;
        border-radius: 25px;
        background-color: transparent;
        padding: 5px 10px;
        width: 100%;
    }


    .section-wrapper {}

    .header_new_responsive_section {
        flex: 1;
        padding: 20px 1%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        background: transparent;
        padding: 0 24px;

        #header_new_responsive_options_jump,
        #header_new_responsive_options_jadu {
            max-height: 30vh;
            overflow-y: auto;

            &::-webkit-scrollbar {
                display: none;
            }



            ul {
                list-style: none;

                li.menu-list-item {
                    cursor: pointer;
                    padding: 10px 0;

                    .item-options {
                        width: 100%;
                        justify-content: space-between;
                        display: flex;
                        align-items: center;
                    }

                    div.submenu-categories {                    
                        margin-top: 10px;
                        padding-left: 10px;
                        border: 2px solid #c2c2c2;
                        border-right: none;
                        border-bottom: none;
                        border-top: none;
                        margin-left: 10px;

                        span {
                            color: #AF0000;
                        }

                        .sub-group-items {
                            margin-bottom: 10px;
                        }
                    }
                }
            }
        }
    }

    .social-links {
        display: flex;
        justify-content: center;
        color: white;
        gap: 15px;

        a {
            font-size: 20px;
            color: white;
            transition: color 0.3s ease;
            align-items: center;

            &:hover {
                color: #AF0000;
                fill: #AF0000;
            }
        }
    }

    .social-links svg {
        width: 24px;
        height: 24px;
        transition: fill 0.3s ease;
    }

    .social-links a:hover svg {
        fill: #AF0000 !important;
    }
}

.header_new_responsive_container::-webkit-scrollbar {
    display: none;
}

.header_new_responsive_login_container {
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding-top: 5%;
    padding-bottom: 5%;
}

.header_new_responsive_login {
    padding: 2% 4%;
    transition: 0.3s ease;
    border-radius: 10px;
}

.header_new_responsive_login:hover {
    background-color: var(--color_company_1);
    color: #FFF;
}

.header_new_responsive_register {
    padding: 2% 4%;
    transition: 0.3s ease;
    border-radius: 10px;
}

.header_new_responsive_register:hover {
    background-color: var(--color_company_2);
    color: #FFF;
}

.header_new_responsive_logout {
    margin-top: 6%;
    text-align: center;
    padding: 2% 4%;
    transition: 0.3s ease;
}

.header_new_responsive_login {
    border: 1px solid #000;
}

.header_new_responsive_logout {
    border: 1px solid transparent;
    color: #f00;
}

.header_new_responsive_logout:hover {
    background: #f00;
    color: #FFF;
}

.header_new_responsive_logo {
    display: block;
    width: 100%;
    max-width: 180px;
    margin: 0 auto 12px auto;
    height: auto;
}

#header_new_masonry_container {
    height: 90vh !important;
    left: 20%;
    top: 10%;
    box-sizing: border-box;
    text-align: left;
    display: none;
    position: fixed;
    transition: all ease 200ms;
    -ms-overflow-style: none;
    scrollbar-width: none;
    background-color: #fff;
    z-index: 1000;
    overflow-y: scroll;
    padding-top: 5%;
    padding-bottom: 5%;
    width: 50%;
}

#header_new_masonry_container::-webkit-scrollbar {
    display: none;
}

.header_new_masonry_category h3 {
    color: var(--color_company_4);
    font-weight: bold;
    margin-left: 15px;
    text-transform: lowercase;
}

.header_new_masonry_category h3::first-letter {
    text-transform: capitalize;
}




.header_new_masonry_link {
    cursor: pointer;
    margin-right: 100px;
    background-color: white;
    color: var(--color_company_2);
    border-radius: 10px;
    border: 1px solid var(--color_company_2);
    transition: background-color 0.3s ease, color 0.3s ease;
    text-align: center;
    padding-top: 10px;
    padding-right: 5px;
    padding-left: 5px;
    margin-bottom: 10px;
}

.header_new_masonry_link:hover {
    background-color: var(--color_company_2);
    color: white;
}


.header_new_masonry_title {
    display: flex;
    justify-content: space-between;
}


@media (min-width: 1101px) {
    #header_new_masonry_options {
        column-count: 3;
        column-gap: 0em;
    }
}

/* Para pantallas pequeñas */
@media (max-width: 1250px) {
    #header_new_masonry_options {
        column-count: 2;
        column-gap: 0em;
    }
}

.masonry-item {
    margin: 5px;
    padding: 10px;
    display: inline-block;
    box-sizing: border-box;
    width: auto;
    box-sizing: border-box;
    word-break: break-word;
}

.masonry-item p {
    display: -webkit-box;
    line-clamp: 1;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.masonry-item p:hover {
    text-decoration: underline;
}

.masonry-group {
    max-width: auto;
    color: var(--color_company_4);
    font-weight: bold;
    font-size: 18px;
}

.masonry-subgroup {
    display: flex;
    flex-direction: row;
    width: 200px;
    padding-left: 5px;
    padding-bottom: 2px;
    padding-top: 2px;
    color: #000;
    font-size: 15px;
}

.subgroup-container {
    background-color: #f0f0f0;
    padding: 5px;
}


.masonry-group,
.masonry-subgroup {
    max-width: 100%;

}

.masonry-item p::first-letter {
    text-transform: capitalize;
}

.menu-item {
    padding: 5px;
    cursor: pointer;
    box-sizing: border-box;
    word-break: break-word;
}

.menu-item p {
    display: -webkit-box;
    line-clamp: 1;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.menu-item p:hover {
    text-decoration: underline;
}



#options_new_menu_movil {
    background-color: #ffffff00;
    padding-left: 10px;
    padding-bottom: 8px;
    padding-top: 8px;
}

.menu-options-container {
    position: relative;
    transition: all 0.10s;
}



.submenu-group,
.submenu-subgroup {
    padding: 5px;
    cursor: pointer;
}

.ver-todo {
    background-color: #ffffff00;
    /* Background color */
    color: black;
    font-weight: bold;
    padding: 5px;
    transition: background-color 0.3s ease, color 0.3s ease;
    padding-left: 20px;
}

.ver-todo:hover {
    background-color: rgba(255, 255, 255, 0);
    color: var(--color_company_1);
}


.header_new_responsive_link {
    padding-top: 4%;
    padding-bottom: 4%;
    padding-right: 10%;
    border-bottom: 1px solid #a4a4a4;
    text-transform: lowercase;
    transition: 0.3s ease;
}

.header_new_responsive_link::first-letter {
    text-transform: capitalize;
}

.header_new_responsive_link::-webkit-first-letter {
    text-transform: capitalize;
}

.header_new_responsive_link:hover {
    background-color: #ececec;
}

.border-left-color { border-left: 3px solid var(--color_company_2); }

/* Header layout improvements */
.header-sidebar {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 16px 20px;
}

.sidebar-brand {
    display: flex;
    align-items: center;
    justify-content: center;
}

.sidebar-search {
    position: relative;
    svg {
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
    }

    input {
        border: 1px solid #ccc;
        color: #ccc;
        border-radius: 25px;
        background-color: transparent;
        padding: 5px 10px;
        width: 100%;
    }
}


/* Single footer with social links */
.sidebar-footer {
    margin-top: auto;
    padding: 12px 20px 20px;
}

.sidebar-footer .social-links {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
}

.sidebar-footer .social-links a {
    color: #AF0000;
    font-size: 20px;
    transition: color 0.2s ease;
}

.sidebar-footer .social-links a:hover {
    color: #AF0000;
}



@media screen and (max-width: 768px) {
    .header_new_responsive_container {
        width: 45%;
    }
}


@media (max-width: 1024px) {
    .header_new_responsive_container {
        width: 25%;
    }

    #header_new_masonry_container {
        left: 25%;
    }
}

@media (max-width: 992px) {
    .header_new_responsive_container {
        width: 30%;
    }

    #overShadow {
        z-index: 500;
    }
}


@media (max-width: 767px) {
    .header_new_responsive_container {
        width: 40%;
    }
}

@media screen and (max-width: 500px) {
    .header_new_responsive_container {
        width: 75%;
    }
}



#header_new_responsive_options_jump,
#header_new_responsive_options_jadu {
    width: 100%;
    /* Toma todo el ancho disponible */
    display: block;
}



.jump-shop {
    background-color: white;
    padding: 10px;
    width: 100%;
}



/* Asegurar que Jadu Shop tenga fondo gris y ocupe todo el ancho */
.jadu-shop {
    background-color: #f2f2f2;
    /* Color gris */
    padding: 10px;
    width: 100%;
    /* Ocupar todo el ancho */
    display: block;
    /* Asegurar que se expanda correctamente */
}


.category-name {
    font-weight: 500;
}